var express = require('express');
var router = express.Router();

//导入配置文件
const {secrect} = require('../../config/config');


//导入jsonwebtoken模块
const jwt = require('jsonwebtoken');

//导入用户模型
const UserModel = require('../../models/UserModel');

//导入 MD5 加密模块
const md5 = require('md5');



//用户登录(输入用户名和密码来登录)
router.post('/login', (req, res) => {
  //获取用户名和密码
  let { username, password } = req.body;
  //根据用户名和密码查询数据库
  UserModel.findOne({ username, password: md5(password) })
    .then(data => {
      //判断data
      if (!data) {
        return res.json({
            code: 2002,
            msg: '用户名或密码错误',
            data: null
          })
      }
      //创建当前用户的token
        let token = jwt.sign({
            username: data.username,
            _id: data._id
        }, secrect, {
            expiresIn: '24h'
        });
        
    //响应token
    res.json({
        code: '0000',
        msg: '登录成功',
        data: token
    })




      //登录成功响应
      res.render('success', { msg: '登录成功啦,哈哈', url: '/account' });
    })
    .catch(err => {
      res.status(500).send('登录失败，请稍候再试...');
      res.json({
        code: 2001,
        msg: '数据库读取失败',
        data: null
      })
    });
});




module.exports = router;
